package com.taskflow.mapper;

import com.taskflow.dto.TaskQueryDTO;
import com.taskflow.entity.DownloadTask;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 下载任务Mapper
 */
@Mapper
public interface DownloadTaskMapper {
    
    int insert(DownloadTask task);
    
    int update(DownloadTask task);
    
    int deleteById(Long id);
    
    DownloadTask selectById(Long id);
    
    List<DownloadTask> selectList(TaskQueryDTO query);
    
    Long selectCount(TaskQueryDTO query);
    
    List<DownloadTask> selectEnabledTasks();
    
    int updateStatus(@Param("id") Long id, @Param("status") Integer status);
    
    List<DownloadTask> selectAllTasks();
}

